巴菲特提到:
所有的男人的不幸出自同一個原因,即他們都不能安份地呆在一個房間裡。
參加鐵人賽,可以減少男人的不幸,但是可否減少女人的不幸,就不清楚了。
程式如下:
import urllib.request
from bs4 import BeautifulSoup
url = 'http://mops.twse.com.tw/mops/web/ajax_t51sb08?'\
'encodeURIComponent=1&step=1&firstin=1&off=1&TYPEK=sii&year=101&season=01'
response = urllib.request.urlopen(url)
html = response.read()
sp = BeautifulSoup(html.decode('utf8'))
tbls=sp.find_all('table',attrs={ 'class' : "hasBorder"})
j=0
for k in range(0,5):
i=0
trs=tbls[k].find_all('tr')
for tr in trs:
i=i+1
if i>1:
#print(tr)
tds=tr.find_all('td')
if len(tds)>1:
j=j+1
print (tds[0].get_text(),tds[1].get_text(),tds[len(tds)-1].get_text())
print(j)
沒想到,硬要用之前的邏輯來套,
卻不適用。重寫了,用最簡單的邏輯來寫。
這的損益表,在table的設計樣式上,和102年之後的不同。
在一個table裏包好幾個th, 這讓筆者繞了好大的彎路。
最後還是用到最簡單的邏輯,基本每股營餘,在最右邊的欄位來解。
因為歷史資料(101及以前)和102年及之後,
的網頁格式不一致(外表看起來很像),導致抓data的程式要修正,
一修正,竟然因為沒寫法,無窮迴圈,跑不出答案,因為我是用WEB版ipython,
在關網頁時,又不小心把沒存檔的鐵人文關掉,二度傷害。真傷!!
一不小心,又二度busy(ipython跑個不停)了!!好慘!!
因為實在心有不甘,再快速測了,101年,2,3,4季,想不到,竟然都可抓出EPS,
以為是沒有規則的亂寫,其實別人也是有規則的出表,只是筆者太愚眛,看不出來罷了!